This week in Flutter #27: FlutterFire for Linux and Windows is on its way!
Invertase, the company bringing Firebase integration to Flutter, is working on FlutterFire for desktop. More specifically they are adding Linux and Windows support. MacOS is already (partially) supported. The interesting part is that they are building a universal SDK using Dart, which means that they could also move the existing platforms to use the same Dart SDK, while they are now using the existing SDKs available for each platform. They can keep to code separated by using federated plugins. It is still unknown when all the different services from Firebase will be ready for desktop, but it is good to know that they are working on it. The code is open source, so, if you like, you can contribute via the official repository.
In the meanwhile, Google announced Android 12L, a version of Android that works well on larger and foldable devices. We, Flutter developers, already design our apps with larger devices in mind (right?), so I am not sure if and how this version will influence Flutter. Reading the official guide on how to migrate your app UI for Android, it looks to me that, if you designed your Flutter app for web or desktop, you do not need to do anything else. Let me know what you think.
- Michele Volpato
Development π§βπ»
π Facebook reaction animation
This is BαΊ£o TrΖ°Ζ‘ng attempt to recreate the animation used in Facebook when you react to a post. It is a good exercise, with explanations of the process he went through to reverse engineer it.
π Take a screenshot during Flutter integration tests
I never tried, but you can take a screenshot while testing in Flutter. Have a look at this article by [Martin JableΔnΓk](https://dev.to/mjablecnik) to get started and let me know if you manage to add this feature in your development process.
π Geolocation and geocoding in Flutter
One thing I love about Flutter is that, sometimes, complex code implementation is hidden behind the native code used in the packages you import in your project. Like in this article, by Bhavya Mishra, where the boilerplate code is hidden in the implementation of the location
package.
π Explore AbsorbPointer In Flutter
Let’s say you want to temporarily disable all controls in a widget. For instance, you have a settings screen with an “enable settings” toggle at the top. You can rebuild the subtree by passing an “enabled” parameter. Or you can absorb the user input for the entire subtree! Learn how with this article, by Shaiq khan.
π How to persist data in Flutter using SQLite
Sooner or later you will need to persist data in your Flutter app. One of the ways to do it is by using sqflite. If you are familiar with relational databases but need help to get them to work in a Flutter project, follow this article, by Vijit Ail.
Architecture π
π [Flutter Redux: Complete tutorial with examples](https://blog.logrocket.com/flutter-redux-complete-tutorial-with-examples/)
Redux is a state container for apps written in JavaScript. The idea behind Redux can be applied to apps written in any programming language. For instance, Damilare Jolayemi wrote a nice tutorial to apply it to Flutter apps. Should you use it in your apps? If you moved from JavaScript to Flutter, and you already have experience with it, then you can easily use your existing knowledge. Otherwise, I would prefer a more minimalistic approach.
Backend π
π Learning how to use AWS Amplify in Flutter
I already linked articles about Amplify in previous issues of this newsletter. But this one, by Himanshu Sharma, is on another level. Mute your phone and desktop notifications, and learn how to get started with Amplify and with your Flutter project.
Tools π
π Using derry to manage scripts on your Flutter project
I am a big fan of Makefiles. I use them extensively in my Flutter projects. Another approach is using derry, like in this article by Rodrigo Bastos. You can also achieve the same by using grinder, although it is a bit more complicated.
π Code Generation In Flutter
Learn more about code generation for Flutter apps in this article, by [Dhruv Nakum](https://hashnode.com/@Dhruv-Nakum). Often, when you follow a tutorial, the author just shows you how to automatically generate code for your app. Dhruv also explains why code generation is helpful and when you should avoid it, instead.
Others π€·ββοΈ
π Theme (Flutter Hallowidget of the Week)
In this episode of Widget of the Week, Craig Labenz introduces you to the Theme
widget. Normally, I wouldn’t link this episode, because of how general and easy the subject is. But the Flutter team made a special episode for Halloween. Spooky!
That’s it for this week.
If you want to comment on any of this week’s entries, you can do it in the comment section below.
Have a bug-free week,
- Michele Volpato
Leave a comment